home *** CD-ROM | disk | FTP | other *** search
/ CD ROM Paradise Collection 4 / CD ROM Paradise Collection 4 1995 Nov.iso / os2 / adaptor.zip / ADAPT.ZIP / adaptor / examples / dalib / timing / bench.f next >
Text File  |  1993-03-23  |  1KB  |  47 lines

  1.       program bench
  2.       real*4 dates (:,:), controldates (:,:)
  3.       logical*4 okay (:,:)
  4.       real*4 tstart, tstop
  5.  
  6.       integer n, size, transfers, sum
  7.  
  8.       print *, 'Number of nodes : '
  9.       read *, n
  10.  
  11.       print *, 'Number of dates : '
  12.       read *, size
  13.  
  14.       print *, 'Number of transfers'
  15.       read *, transfers
  16.  
  17.       allocate (dates(size,n),controldates(size,n),okay(size,n))
  18.       call cmf_random (dates)
  19.       controldates = dates
  20.  
  21.       call cm_timer_clear (0)
  22.       call cm_timer_start (0)
  23.       call walltime (tstart)
  24.  
  25.       do i = 1, transfers
  26.         do j = 1, n
  27.           dates = cshift (dates, 2, 1)
  28.         end do
  29.       end do
  30.  
  31.       call cm_timer_stop (0)
  32.       call walltime (tstop)
  33.       call cm_timer_print (0)
  34.  
  35. C     compare the results
  36.       okay = (dates .ne. controldates)
  37.       sum = count (okay)
  38.       print *, 'Transfers = ', transfers 
  39.       print *, 'Shifts = ', transfers * n
  40.       print *, 'Size = ', transfers*n*size*4, ' Bytes'
  41.       print *, 'Wrong results : ', sum
  42.       print *, 'Time needed : ', tstop - tstart
  43.  
  44.       deallocate (okay, controldates, dates)
  45.  
  46.       end
  47.